Screen readers can aid visually impaired users in reading electronic documents. Contents of an electronic document typically contain a correct document flow order for a screen reader to properly read the document. Document flow order specifies a traversal order of document contents. In electronic document formats (e.g., Adobe PDF), document flow order may be specified by a document structure tree (e.g., tag tree) that identifies document items along with their roles and relationships within the document. Item identifiers may be ordered within the document structure tree to reflect correct document flow order. Besides document accessibility, flow order is useful for content recovery (e.g., extracting content from a document), and document reflow (e.g., reshaping document contents to fit a different layout).
Since document flow order is not easily verifiable by a document creator, document reading order is often neglected and consequently incorrect for many documents. For example when the title of a document should be read first, a screen reader may not read the title first if the title is placed in the middle of a document page layout and also placed in the middle of the structure tree traversal order. Document flow order may be corrected by traversing the document structure tree and individually identifying item order in the structure tree to either verify or alter document items so that they are in correct flow order. This verification and correction process can be tedious and time consuming due to the potentially large number of document items and the complexity of traversing the structure tree. Therefore, there exists a need to efficiently verify and modify flow order of content in an electronic document.